package com.authstr.support;

import java.util.List;

/**
 * 该类用于创建注释文本,附带对文本的简单处理
 */
public class CreateAnnotation {

    /**
     * 关键字 换行
     */
    public static  final String KEYWORD_BR="\r\n";

    /**
     * 关键字 TAB
     */
    public static  final String KEYWORD_TAB="\t";


    /**
     * 关键字 插入
     */
    public static  final String KEYWORD_INSERT="插入";

    /**
     * 关键字 删除
     */
    public static  final String KEYWORD_DELETE="删除";

    /**
     * 关键字 更新
     */
    public static  final String KEYWORD_UPDATE="更新";


    public static  String insertTipText(String[] key ,String[] value){
       return  CreateAnnotation.operationTipText(key,value,KEYWORD_INSERT);
    }

    public static  String deleteTipText(String[] key ,String[] value){
        return  CreateAnnotation.operationTipText(key,value,KEYWORD_DELETE);
    }

    public static  String updateTipText(String[] key ,String[] value){
        return  CreateAnnotation.operationTipText(key,value,KEYWORD_UPDATE);
    }

    /**
     * 生成操作提示文本
     * @param key
     * @param value
     * @param operationKeyword
     * @return
     */
    public static  String operationTipText(String[] key ,String[] value,String operationKeyword){
        StringBuffer res=new StringBuffer();
        res.append("-- ").append(operationKeyword).append(" :");
        for(int i=0;i<key.length;i++){
            res.append("  ").append(key[i]).append(" : ").append("[").append(value[i]).append("]");
        }
        return res.toString();

    }

    /**
     * 为一行文本前添加一个缩进
     * @param string
     * @return
     */
    public static String textAddOneTab(String string){
        return textAddTab(string,1);
    }

    /**
     * 为一行文本前添加两个缩进
     * @param string
     * @return
     */
    public static String textAddTwoTab(String string){
        return textAddTab(string,2);
    }

    /**
     * 为一行文本前添加指定数量的缩进
     * @param string
     * @param count
     * @return
     */
    public static String textAddTab(String string,int count){
        StringBuffer res=new StringBuffer();
        for(int i=0;i<count;i++){
            res.append(KEYWORD_TAB);
        }
        return  res.append(string).toString();
    }

    /**
     * 打印一个List<String>
     * @param list
     */
    public static void printListString(List<String> list){
        for(int i=0;i<list.size();i++){
            System.out.println(list.get(i));
        }
    }

}
